package com.yang.controller;

import com.yang.annotation.SystemLog;
import com.yang.domain.Result;
import com.yang.service.ArticleService;
import org.springframework.web.bind.annotation.*;

import javax.annotation.Resource;


@RequestMapping("article")
@RestController
public class ArticleController {

    @Resource
    private ArticleService articleService;

    /**
     * 查询热门文章,前10个
     * @return 文章集合
     */
    @GetMapping("hotArticleList")
    public Result hotArticleList(){
        return articleService.hotArticleList();
    }

    /**
     * 分页查询文章列表
     * @param pageNum 第几页
     * @param pageSize 每一页几行
     * @param categoryId 分类id
     * @return 文章集合
     */
    @GetMapping("/articleList")
    public Result articleList(Integer pageNum,Integer pageSize,Long categoryId){
        return articleService.articleList(pageNum,pageSize,categoryId);
    }

    /**
     * 查询文章详细信息
     * @param id 文章id
     * @return 详细信息
     */
    @GetMapping("/{id}")
    @SystemLog(businessName = "查询文章详细信息")
    public Result getArticleDetail(@PathVariable("id") Long id){
        return articleService.getArticleDetail(id);
    }


    @PutMapping("/updateViewCount/{id}")
    public Result updateViewCount(@PathVariable("id") Long id){
        return articleService.updateViewCount(id);
    }

}
